package com.atguigu.service;

import com.atguigu.entity.OrderInfo;
import com.atguigu.enums.ProcessStatus;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;

/**
 * <p>
 * 订单表 订单表 服务类
 * </p>
 *
 * @author fumeng
 * @since 2021-11-11
 */
public interface OrderInfoService extends IService<OrderInfo> {

    Long saveOrderInfoAndDetail(OrderInfo orderInfo);


    String getTradeNo(String userId);

    boolean checkTradeNo(String tradeNo, String userId);

    void deleteTradeNo(String userId);

    List<String> checkStockAndPrice(OrderInfo orderInfo, String userId);


    void updateOrderStatus(OrderInfo orderInfo, ProcessStatus closed);

    OrderInfo getOrderInfo(Long orderId);

    void sendMsgToWarehouse(OrderInfo orderInfo);


    String splitOrder(Long orderId, String wareHouseIdSkuIdMapJson);


}
